package jvmtest.RemoteExeDemo;
/**
 * Created with IntelliJ IDEA.
 *
 * @Author: Tom
 * @Date: 2022/02/08/10:58
 * @Description:
 */

/**
 *@ClassName HotSwapClassLoader
 *@Description 为了多次载入执行类而加入的类加载器
 * 把defineClass方法开放出来，只有外部显示调用时才会使用到loadByte方法
 * 由虚拟机调用时，依然按照原有的双亲委派规则使用loadClass方法进行类加载
 *@Author 王琛
 *@Date 2022/2/8 10:58
 @Version 1.0
 */
public class HotSwapClassLoader extends ClassLoader{
    public HotSwapClassLoader() {
        super(HotSwapClassLoader.class.getClassLoader());
    }

    public Class loadByte(byte[] classByte){
        return defineClass(null, classByte, 0, classByte.length);
    }
}
